home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 8: LINUX Games / Linux Cubed Series 8 - LINUX Games.iso / games / x11 / video / xevil-1.000 / xevil-1 / id.h < prev    next >
C/C++ Source or Header  |  1995-06-06  |  2KB  |  61 lines

  1. // "id.h" Object locator id.
  2. // TAG: ID
  3.  
  4. /*    Copyright (C) 1994  Steve Hardt
  5.  
  6.     This program is free software; you can redistribute it and/or modify
  7.     it under the terms of the GNU General Public License as published by
  8.     the Free Software Foundation; either version 1, or (at your option)
  9.     any later version.
  10.  
  11.     This program is distributed in the hope that it will be useful,
  12.     but WITHOUT ANY WARRANTY; without even the implied warranty of
  13.     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14.     GNU General Public License for more details.
  15.  
  16.     You should have received a copy of the GNU General Public License
  17.     along with this program; if not, write to the Free Software
  18.     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  19.  
  20.     Steve Hardt 
  21.     hardts@athena.mit.edu hardts@media.mit.edu
  22.     hardts@escher.3dem.bioch.bcm.tmc.edu
  23.     2043 McClendon
  24.     Houston, TX 77030
  25. */
  26.  
  27. #ifndef ID_H
  28. #define ID_H
  29.  
  30. // No '#pragma interface' because there is no "id.cc".
  31.  
  32. class Locator;
  33. class Identifier {
  34.   friend class Locator;
  35.  
  36.  public:
  37.   Identifier() {index = INVALID;}
  38.   Boolean operator == (const Identifier &other) const
  39.   {return (other.index == index) && (other.unique == unique);}
  40.   Boolean operator != (const Identifier &other) const
  41.   {return (other.index != index) || (other.unique != unique);}
  42.   
  43.  private:  
  44.   enum {INVALID = -1};
  45.   int index; 
  46.   int unique;
  47. };
  48.  
  49.  
  50. class Id: public Identifier {
  51. public:
  52.   Id() {};
  53. };
  54.  
  55.  
  56. class IntelId: public Identifier {
  57. public:
  58.   IntelId() {};
  59. };
  60. #endif
  61.